<?php 

	/**
	 * __invoke()方法
	 * 在对象实例之后，调用对象只是出现了‘()’的时候。
	 *
	 * __callStatic($methed, $args)
	 *在调用静态未定义的方法函数时调用
	 * 
	 */


	class Person {
		public $name;
		public $age;
		public $sex;

		public function __construct($name, $age, $sex) {
			$this->name = $name;
			$this->age  = $age;
			$this->sex  = $sex;
		}

		public function say(){
			echo "你好，我叫{$name}";
		}

		static function __callStatic($methed, $args){
			echo "你调用的静态方法$methed(".implode(".").")不存在!";
		}

		public function __invoke($a, $b, $c){
			echo "调用我的时候出现了（）。{$a} == {$b} == {$c}<br>";
		}

	}

	$p = new Person("Tom", 18, "男");
	$p(1, 2, 3);

	Person::run(1, 2, 3);










 ?>